package homework.test02;

import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;

public class demo04 {
    public static void main(String[] args) {
        // 创建一个包含100个数的列表（这里以1到100的整数为例）
        List<Integer> numbers = new ArrayList<>(100);
        Random random = new Random();
        for (int i = 0; i < 100; i++) {
            // 可以使用random.nextInt(100) + 1来生成1到100之间的随机数
            // 这里为了演示，我们直接使用i（即0到99的整数，你可以根据需要调整范围）
            numbers.add(random.nextInt(100) + 1); // 或者直接添加i，如果你想统计0到99的整数
            // numbers.add(i + 1); // 如果要统计1到100的整数，可以使用这行代码替换上面的随机生成
        }

        // 使用Stream流统计每个数出现的次数
        Map<Integer, Long> frequencyMap = numbers.stream()
                .collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));

        // 打印结果
        frequencyMap.forEach((number, frequency) -> System.out.println("Number: " + number + ", Frequency: " + frequency));
    }
}